import request from '@/config/axios'
import type { Dayjs } from 'dayjs'

/** 客户档案信息 */
export interface CustomerArchive {
  id: number // ID
  name: string // 客户名称
  code: string // 客户编号
  preName: string // 客户原名
  manageUnit: string // 管理单元
  area: string // 所属区域
  position: string // 定位
  address: string // 地址
  industry: string // 行业分类
  contactName: string // 联系人姓名
  contactNumber: string // 联系电话
  contactDuty: string // 联系人职务
  contactAge: string // 联系人年龄
  introduce: string // 简介
  businessSource: string // 业务来源
  companyScale: string // 公司规模
  customerRequire: string // 客户需求
  powerScene: string // 用电场景
  signDifficulty: string // 签约难度
  receiveDifficulty: string // 收款难度
  directorName: string // 决策人名称
  directorNumber: string // 决策人电话
  directorDuty: string // 决策人职务
  directorAge: string // 决策人年龄
  powerIndustryKnown: string // 对电力行业了解程度
  powerKnowledge: string // 对电费单、用电知识了解程度
  specialRemark: string // 特殊情况记录
  ownerUserId: number // 客户负责人
}

// 客户档案 API
export const CustomerArchiveApi = {
  // 查询客户档案分页
  getCustomerArchivePage: async (params: any) => {
    return await request.get({ url: `/san/biz-customer-archive/page`, params })
  },

  // 查询客户档案详情
  getCustomerArchive: async (id: number) => {
    return await request.get({ url: `/san/biz-customer-archive/get?id=` + id })
  },

  // 新增客户档案
  createCustomerArchive: async (data: CustomerArchive) => {
    return await request.post({ url: `/san/biz-customer-archive/create`, data })
  },

  // 修改客户档案
  updateCustomerArchive: async (data: CustomerArchive) => {
    return await request.put({ url: `/san/biz-customer-archive/update`, data })
  },

  // 删除客户档案
  deleteCustomerArchive: async (id: number) => {
    return await request.delete({ url: `/san/biz-customer-archive/delete?id=` + id })
  },

  /** 批量删除客户档案 */
  deleteCustomerArchiveList: async (ids: number[]) => {
    return await request.delete({
      url: `/san/biz-customer-archive/delete-list?ids=${ids.join(',')}`
    })
  },

  // 导出客户档案 Excel
  exportCustomerArchive: async (params) => {
    return await request.download({ url: `/san/biz-customer-archive/export-excel`, params })
  },

  // 修改客户档案
  changeServiceStatus: async (data: CustomerArchive) => {
    return await request.put({ url: `/san/biz-customer-archive/changeServiceStatus`, data })
  },

  // 获取简易客户列表
  getSimpleList: async (params: any) => {
    return await request.get({ url: `/san/biz-customer-archive/getSimpleList`, params })
  },

  // 获得客户档案列表-添加公司信息时选择客户用
  getBizCustomerArchiveList: async (params: any) => {
    return await request.get({ url: `/san/biz-customer-archive/getBizCustomerArchiveList`, params })
  }
}
